home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 292_04 / t6804s.asm < prev    next >
Assembly Source File  |  1990-07-16  |  7KB  |  389 lines

  1.     .title    AS6804 Sequential Test
  2.  
  3.     .radix    x
  4.  
  5.     .area    DATA (ABS,OVR)
  6.  
  7.     bit0    =    0
  8.     bit1    =    1
  9.     bit2    =    2
  10.     bit3    =    3
  11.     bit4    =    4
  12.     bit5    =    5
  13.     bit6    =    6
  14.     bit7    =    7
  15.  
  16.     defg = 0xFE
  17.  
  18. loc0:    .blkb    1
  19. abcd:    .blkb    1
  20. ram:    .blkb    1
  21.     . = loc0 + 0x0100
  22. loc1:
  23.     . = loc0 + 0x0200
  24. loc2:
  25.     . = loc0 + 0x0300
  26. loc3:
  27.     . = loc0 + 0x0400
  28. loc4:
  29.     . = loc0 + 0x0500
  30. loc5:
  31.     . = loc0 + 0x0600
  32. loc6:
  33.     . = loc0 + 0x0700
  34. loc7:
  35.     . = loc0 + 0x0800
  36. loc8:
  37.     . = loc0 + 0x0900
  38. loc9:
  39.     . = loc0 + 0x0A00
  40. loc10:
  41.     . = loc0 + 0x0B00
  42. loc11:
  43.     . = loc0 + 0x0C00
  44. loc12:
  45.     . = loc0 + 0x0D00
  46. loc13:
  47.     . = loc0 + 0x0E00
  48. loc14:
  49.     . = loc0 + 0x0F00
  50. loc15:
  51.  
  52.     .page
  53.  
  54.     .area    AS6804
  55.  
  56.     bne    .+0x01        ; 00
  57.     bne    .+0x02        ; 01
  58.     bne    .+0x03        ; 02
  59.     bne    .+0x04        ; 03
  60.     bne    .+0x05        ; 04
  61.     bne    .+0x06        ; 05
  62.     bne    .+0x07        ; 06
  63.     bne    .+0x08        ; 07
  64.     bne    .+0x09        ; 08
  65.     bne    .+0x0A        ; 09
  66.     bne    .+0x0B        ; 0A
  67.     bne    .+0x0C        ; 0B
  68.     bne    .+0x0D        ; 0C
  69.     bne    .+0x0E        ; 0D
  70.     bne    .+0x0F        ; 0E
  71.     bne    .+0x10        ; 0F
  72.     bne    .-0x0F        ; 10
  73.     bne    .-0x0E        ; 11
  74.     bne    .-0x0D        ; 12
  75.     bne    .-0x0C        ; 13
  76.     bne    .-0x0B        ; 14
  77.     bne    .-0x0A        ; 15
  78.     bne    .-0x09        ; 16
  79.     bne    .-0x08        ; 17
  80.     bne    .-0x07        ; 18
  81.     bne    .-0x06        ; 19
  82.     bne    .-0x05        ; 1A
  83.     bne    .-0x04        ; 1B
  84.     bne    .-0x03        ; 1C
  85.     bne    .-0x02        ; 1D
  86.     bne    .-0x01        ; 1E
  87.     bne    .        ; 1F
  88.  
  89.     .page
  90.  
  91.     beq    .+0x01        ; 20
  92.     beq    .+0x02        ; 21
  93.     beq    .+0x03        ; 22
  94.     beq    .+0x04        ; 23
  95.     beq    .+0x05        ; 24
  96.     beq    .+0x06        ; 25
  97.     beq    .+0x07        ; 26
  98.     beq    .+0x08        ; 27
  99.     beq    .+0x09        ; 28
  100.     beq    .+0x0A        ; 29
  101.     beq    .+0x0B        ; 2A
  102.     beq    .+0x0C        ; 2B
  103.     beq    .+0x0D        ; 2C
  104.     beq    .+0x0E        ; 2D
  105.     beq    .+0x0F        ; 2E
  106.     beq    .+0x10        ; 2F
  107.     beq    .-0x0F        ; 30
  108.     beq    .-0x0E        ; 31
  109.     beq    .-0x0D        ; 32
  110.     beq    .-0x0C        ; 33
  111.     beq    .-0x0B        ; 34
  112.     beq    .-0x0A        ; 35
  113.     beq    .-0x09        ; 36
  114.     beq    .-0x08        ; 37
  115.     beq    .-0x07        ; 38
  116.     beq    .-0x06        ; 39
  117.     beq    .-0x05        ; 3A
  118.     beq    .-0x04        ; 3B
  119.     beq    .-0x03        ; 3C
  120.     beq    .-0x02        ; 3D
  121.     beq    .-0x01        ; 3E
  122.     beq    .        ; 3F
  123.  
  124.     .page
  125.  
  126.     bcc    .+0x01        ; 40
  127.     bcc    .+0x02        ; 41
  128.     bcc    .+0x03        ; 42
  129.     bcc    .+0x04        ; 43
  130.     bcc    .+0x05        ; 44
  131.     bcc    .+0x06        ; 45
  132.     bcc    .+0x07        ; 46
  133.     bcc    .+0x08        ; 47
  134.     bcc    .+0x09        ; 48
  135.     bcc    .+0x0A        ; 49
  136.     bcc    .+0x0B        ; 4A
  137.     bcc    .+0x0C        ; 4B
  138.     bcc    .+0x0D        ; 4C
  139.     bcc    .+0x0E        ; 4D
  140.     bcc    .+0x0F        ; 4E
  141.     bcc    .+0x10        ; 4F
  142.     bcc    .-0x0F        ; 50
  143.     bcc    .-0x0E        ; 51
  144.     bcc    .-0x0D        ; 52
  145.     bcc    .-0x0C        ; 53
  146.     bcc    .-0x0B        ; 54
  147.     bcc    .-0x0A        ; 55
  148.     bcc    .-0x09        ; 56
  149.     bcc    .-0x08        ; 57
  150.     bcc    .-0x07        ; 58
  151.     bcc    .-0x06        ; 59
  152.     bcc    .-0x05        ; 5A
  153.     bcc    .-0x04        ; 5B
  154.     bcc    .-0x03        ; 5C
  155.     bcc    .-0x02        ; 5D
  156.     bcc    .-0x01        ; 5E
  157.     bcc    .        ; 5F
  158.  
  159.     .page
  160.  
  161.     bcs    .+0x01        ; 60
  162.     bcs    .+0x02        ; 61
  163.     bcs    .+0x03        ; 62
  164.     bcs    .+0x04        ; 63
  165.     bcs    .+0x05        ; 64
  166.     bcs    .+0x06        ; 65
  167.     bcs    .+0x07        ; 66
  168.     bcs    .+0x08        ; 67
  169.     bcs    .+0x09        ; 68
  170.     bcs    .+0x0A        ; 69
  171.     bcs    .+0x0B        ; 6A
  172.     bcs    .+0x0C        ; 6B
  173.     bcs    .+0x0D        ; 6C
  174.     bcs    .+0x0E        ; 6D
  175.     bcs    .+0x0F        ; 6E
  176.     bcs    .+0x10        ; 6F
  177.     bcs    .-0x0F        ; 70
  178.     bcs    .-0x0E        ; 71
  179.     bcs    .-0x0D        ; 72
  180.     bcs    .-0x0C        ; 73
  181.     bcs    .-0x0B        ; 74
  182.     bcs    .-0x0A        ; 75
  183.     bcs    .-0x09        ; 76
  184.     bcs    .-0x08        ; 77
  185.     bcs    .-0x07        ; 78
  186.     bcs    .-0x06        ; 79
  187.     bcs    .-0x05        ; 7A
  188.     bcs    .-0x04        ; 7B
  189.     bcs    .-0x03        ; 7C
  190.     bcs    .-0x02        ; 7D
  191.     bcs    .-0x01        ; 7E
  192.     bcs    .        ; 7F
  193.  
  194.     .page
  195.  
  196.     jsr    loc0        ; 80 00
  197.     jsr    loc1        ; 81 00
  198.     jsr    loc2        ; 82 00
  199.     jsr    loc3        ; 83 00
  200.     jsr    loc4        ; 84 00
  201.     jsr    loc5        ; 85 00
  202.     jsr    loc6        ; 86 00
  203.     jsr    loc7        ; 87 00
  204.     jsr    loc8        ; 88 00
  205.     jsr    loc9        ; 89 00
  206.     jsr    loc10        ; 8A 00
  207.     jsr    loc11        ; 8B 00
  208.     jsr    loc12        ; 8C 00
  209.     jsr    loc13        ; 8D 00
  210.     jsr    loc14        ; 8E 00
  211.     jsr    loc15        ; 8F 00
  212.  
  213.     jmp    loc0        ; 90 00
  214.     jmp    loc1        ; 91 00
  215.     jmp    loc2        ; 92 00
  216.     jmp    loc3        ; 93 00
  217.     jmp    loc4        ; 94 00
  218.     jmp    loc5        ; 95 00
  219.     jmp    loc6        ; 96 00
  220.     jmp    loc7        ; 97 00
  221.     jmp    loc8        ; 98 00
  222.     jmp    loc9        ; 99 00
  223.     jmp    loc10        ; 9A 00
  224.     jmp    loc11        ; 9B 00
  225.     jmp    loc12        ; 9C 00
  226.     jmp    loc13        ; 9D 00
  227.     jmp    loc14        ; 9E 00
  228.     jmp    loc15        ; 9F 00
  229.  
  230.     .page
  231.  
  232.                 ; A0
  233.                 ; A1
  234.                 ; A2
  235.                 ; A3
  236.                 ; A4
  237.                 ; A5
  238.                 ; A6
  239.                 ; A7
  240.     incx            ; A8
  241.     incy            ; A9
  242.                 ; AA
  243.                 ; AB
  244.     txa            ; AC
  245.     tya            ; AD
  246.                 ; AE
  247.                 ; AF
  248.  
  249.     mvi    abcd,#defg    ; B0 01 FE
  250.                 ; B1
  251.     rti            ; B2
  252.     rts            ; B3
  253.     coma            ; B4
  254.     rola            ; B5
  255.     stop            ; B6
  256.     wait            ; B7
  257.     decx            ; B8
  258.     decy            ; B9
  259.                 ; BA
  260.                 ; BB
  261.     tax            ; BC
  262.     tay            ; BD
  263.                 ; BE
  264.                 ; BF
  265.  
  266.     .page
  267.  
  268. 1$:    brclr    #bit0,ram, .    ; C0 02 FD
  269. 2$:    brclr    #bit1,ram,2$    ; C1 02 FD
  270. 3$:    brclr    #bit2,ram,3$    ; C2 02 FD
  271. 4$:    brclr    #bit3,ram,4$    ; C3 02 FD
  272. 5$:    brclr    #bit4,ram,5$    ; C4 02 FD
  273. 6$:    brclr    #bit5,ram,6$    ; C5 02 FD
  274. 7$:    brclr    #bit6,ram,7$    ; C6 02 FD
  275. 8$:    brclr    #bit7,ram,8$    ; C7 02 FD
  276.  
  277. 9$:    brset    #bit0,ram,9$    ; C8 02 FD
  278. 10$:    brset    #bit1,ram,10$    ; C9 02 FD
  279. 11$:    brset    #bit2,ram,11$    ; CA 02 FD
  280. 12$:    brset    #bit3,ram,12$    ; CB 02 FD
  281. 13$:    brset    #bit4,ram,13$    ; CC 02 FD
  282. 14$:    brset    #bit5,ram,14$    ; CD 02 FD
  283. 15$:    brset    #bit6,ram,15$    ; CE 02 FD
  284. 16$:    brset    #bit7,ram,16$    ; CF 02 FD
  285.  
  286.     bclr    #bit0,ram    ; D0 02
  287.     bclr    #bit1,ram    ; D1 02
  288.     bclr    #bit2,ram    ; D2 02
  289.     bclr    #bit3,ram    ; D3 02
  290.     bclr    #bit4,ram    ; D4 02
  291.     bclr    #bit5,ram    ; D5 02
  292.     bclr    #bit6,ram    ; D6 02
  293.     bclr    #bit7,ram    ; D7 02
  294.  
  295.     bset    #bit0,ram    ; D8 02
  296.     bset    #bit1,ram    ; D9 02
  297.     bset    #bit2,ram    ; DA 02
  298.     bset    #bit3,ram    ; DB 02
  299.     bset    #bit4,ram    ; DC 02
  300.     bset    #bit5,ram    ; DD 02
  301.     bset    #bit6,ram    ; DE 02
  302.     bset    #bit7,ram    ; DF 02
  303.  
  304.     .page
  305.  
  306.     lda    ,x        ; E0
  307.     sta    ,x        ; E1
  308.     add    ,x        ; E2
  309.     sub    ,x        ; E3
  310.     cmp    ,x        ; E4
  311.     and    ,x        ; E5
  312.     inc    ,x        ; E6
  313.     dec    ,x        ; E7
  314.  
  315.     lda    #defg        ; E8 FE
  316.                 ; E9
  317.     add    #defg        ; EA FE
  318.     sub    #defg        ; EB FE
  319.     cmp    #defg        ; EC FE
  320.     and    #defg        ; ED FE
  321.                 ; EE
  322.                 ; EF
  323.  
  324.     lda    ,y        ; F0
  325.     sta    ,y        ; F1
  326.     add    ,y        ; F2
  327.     sub    ,y        ; F3
  328.     cmp    ,y        ; F4
  329.     and    ,y        ; F5
  330.     inc    ,y        ; F6
  331.     dec    ,y        ; F7
  332.  
  333.     lda    ram        ; F8 02
  334.     sta    ram        ; F9 02
  335.     add    ram        ; FA 02
  336.     sub    ram        ; FB 02
  337.     cmp    ram        ; FC 02
  338.     and    ram        ; FD 02
  339.     inc    ram        ; FE 02
  340.     dec    ram        ; FF 02
  341.  
  342.     .page
  343.     .sbttl    Special Forms of inc, dec, lda, and sta
  344.  
  345.     inc    0x80        ; A8    incx
  346.     inc    0x81        ; A9    incy
  347.     inc    0x82        ; AA
  348.     inc    0x83        ; AB
  349.     lda    0x80        ; AC    txa
  350.     lda    0x81        ; AD    tya
  351.     lda    0x82        ; AE
  352.     lda    0x83        ; AF
  353.  
  354.     dec    0x80        ; B8    decx
  355.     dec    0x81        ; B9    decy
  356.     dec    0x82        ; BA
  357.     dec    0x83        ; BB
  358.     sta    0x80        ; BC    tax
  359.     sta    0x81        ; BD    tay
  360.     sta    0x82        ; BE
  361.     sta    0x83        ; BF
  362.  
  363.     .sbttl    Derived Instructions
  364.  
  365.     asla            ; FA FF
  366. 17$:    bam    17$        ; CF FF FD
  367. 18$:    bap    18$        ; C7 FF FD
  368. 19$:    bxmi    19$        ; CF 80 FD
  369. 20$:    bxpl    20$        ; C7 80 FD
  370. 21$:    bymi    21$        ; CF 81 FD
  371. 22$:    bypl    22$        ; C7 81 FD
  372.     clra            ; FB FF
  373.     clrx            ; B0 80 00
  374.     clry            ; B0 81 00
  375.     deca            ; FF FF
  376.     decx            ; B8
  377.     decy            ; B9
  378.     inca            ; FE FF
  379.     incx            ; A8
  380.     incy            ; A9
  381.     ldxi    #defg        ; B0 80 FE
  382.     ldyi    #defg        ; B0 81 FE
  383.     nop            ; 20
  384.     tax            ; BC
  385.     tay            ; BD
  386.     txa            ; AC
  387.     tya            ; AD
  388.  
  389.